#ifndef __LIST_H
#define __LIST_H

typedef float ElementType;
struct node;
typedef struct node Node;

typedef Node *PtrToNode;
typedef PtrToNode List;
// typedef PtrToNode Position;

List newList();
void insert(const List l, ElementType x);
void printList(const List l);
int isEmpty(const List l);

List makeEmpty(const List l);
void deleteList(const List l);

PtrToNode find(const List l, ElementType x);
PtrToNode findPrevious(const List l, ElementType x);
ElementType retrive(PtrToNode p);

#endif